perm filename TIMING.SCM[SCH,LSP] blob sn#688850 filedate 1982-11-14 generic text, type T, neo UTF8
;;; -*-SCHEME-*-

(define (fib n)
  (cond ((= n 0) 0)
	((= n 1) 1)
	(else (+ (fib (-1+ n))
		 (fib (- n 2))))))

(define (time n)
  (lisp-eval '(progn (gc)
		     (setq foo (runtime))
		     (setq bar (status gctime))))
  (fib n)
  (lisp-eval '(cons (- (runtime) foo)
		    (- (status gctime) bar))))

(define (fact n ans)
  (if (zero? n) ans
      (fact (-1+ n) (* n ans))))

(define (iter-time)
  (lisp-eval '(progn (gc)
		     (setq foo (runtime))
		     (setq bar (status gctime))))
  (fact 200. 1)
  (lisp-eval '(cons (- (runtime) foo)
		    (- (status gctime) bar))))